﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Modelo.Modulos.ClasesModelado;
using AccesoDatos.Modulos.ClasesAccesoDatos;

namespace Logica.Modulos.ClasesLogica
{
   public class PuestosLog:Negocio
    {
       public void InsertarPuestos(PuestosMod obj)
       {
           try
           {
               this.IniciarTransaccion();

               PuestosBD objBD = new PuestosBD();

               objBD.InsertarPuesto(this.comando, obj);

               this.ConfirmarTransaccion();
           }
           catch (Exception exc)
           {
               this.DeshacerTransaccion();
               throw exc;
           }
       }

       public List<PuestosMod> ConsultarPuestos()
       {
           try
           {
               this.AbrirConexion();

               PuestosBD objBD = new PuestosBD();

               List<PuestosMod> lista = objBD.Consultar(this.comando);

               this.CerrarConexion();

               return lista;
           }
           catch (Exception exc)
           {
               this.CerrarConexion();
               throw exc;
           }
       }

       public void Eliminar(PuestosMod obj)
       {
           try
           {
               this.IniciarTransaccion();

              PuestosBD objBD = new PuestosBD();

               objBD.Eliminar(this.comando, obj);

               this.ConfirmarTransaccion();
           }
           catch (Exception exc)
           {
               this.DeshacerTransaccion();
               throw exc;
           }
       }

       public List<PuestosMod> ConsultarPuestoId(PuestosMod objs)
       {
           try
           {
               this.AbrirConexion();

               PuestosBD objBD = new PuestosBD();

               List<PuestosMod> lista = objBD.ConsultarPuestoID(this.comando, objs);

               this.CerrarConexion();

               return lista;
           }
           catch (Exception exc)
           {
               this.CerrarConexion();
               throw exc;
           }
       }

       public void ActualizarPuesto(PuestosMod obj)
       {
           try
           {
               this.IniciarTransaccion();

               PuestosBD objBD = new PuestosBD();

               objBD.ActualizarPuesto(this.comando, obj);

               this.ConfirmarTransaccion();
           }
           catch (Exception exc)
           {
               this.DeshacerTransaccion();
               throw exc;
           }
       }

    }
}
